// pages/guanli/guanli.js
const app = getApp()

var api = require('../../js/api.js');

let usersIndex = 0;

Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		users: [],
		indicatorDots: false,


		logo: '',
		actionSheetHidden: true,
		actionSheetItems: [
			{bindtap: 'Menu1', txt: '检测记录'},
			{bindtap: 'Menu2', txt: '修改资料'},
			{bindtap: 'Menu3', txt: '删除成员'}
		],


	},

	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad: function(options) {

		var that = this
		that.setData({
			logo: app.globalData.logo
		})
		
	},

	/**
	 * 生命周期函数--监听页面初次渲染完成
	 */
	onReady: function() {

	},

	/**
	 * 生命周期函数--监听页面显示
	 */
	onShow: function() {
		var that = this
		this.setData({
			users: app.globalData.users,

		})
	},

	/**
	 * 生命周期函数--监听页面隐藏
	 */
	onHide: function() {

	},

	/**
	 * 生命周期函数--监听页面卸载
	 */
	onUnload: function() {

	},

	/**
	 * 页面相关事件处理函数--监听用户下拉动作
	 */
	onPullDownRefresh: function() {

	},

	/**
	 * 页面上拉触底事件的处理函数
	 */
	onReachBottom: function() {

	},

	/**
	 * 用户点击右上角分享
	 */
	onShareAppMessage: function() {

	},
	//手指触摸动作开始 记录起点X坐标
	touchstart: function(e) {
		//开始触摸时 重置所有删除
		this.data.users.forEach(function(v, i) {
			if (v.isTouchMove) //只操作为true的
				v.isTouchMove = false;
		})
	
		this.setData({
			startX: e.changedTouches[0].clientX,
			startY: e.changedTouches[0].clientY,
			users: this.data.users
		})
	
	},
	
	//滑动事件处理
	touchmove: function(e) {
	
		var that = this,
			index = e.currentTarget.dataset.index, //当前索引
			startX = that.data.startX, //开始X坐标
			startY = that.data.startY, //开始Y坐标
	
			touchMoveX = e.changedTouches[0].clientX, //滑动变化坐标
			touchMoveY = e.changedTouches[0].clientY, //滑动变化坐标
	
			//获取滑动角度
			angle = that.angle({
				X: startX,
				Y: startY
			}, {
				X: touchMoveX,
				Y: touchMoveY
			});
			if(index == 0){
				return
			}
		that.data.users.forEach(function(v, i) {
			v.isTouchMove = false
	
			//滑动超过30度角 return
			if (Math.abs(angle) > 30) {
				console.log('==角度>30')
				return
			}
			if (i == index) {
				if (touchMoveX > startX) { //右滑
					v.isTouchMove = false
				} else { //左滑
					v.isTouchMove = true
				}
	
	
			}
		})
	
		//更新数据
		that.setData({
			users: that.data.users
		})
	},
	
	/**
	 * 计算滑动角度
	 * @param {Object} start 起点坐标
	 * @param {Object} end 终点坐标
	 */
	angle: function(start, end) {
		var _X = end.X - start.X,
			_Y = end.Y - start.Y
		//返回角度 /Math.atan()返回数字的反正切值
		return 360 * Math.atan(_Y / _X) / (2 * Math.PI);
	},

	//删除事件
	del: function (e) {


		var that = this
		wx.showModal({
			title: '提示',
			content: '确定要删除吗？',
			success: function (sm) {
				if (sm.confirm) {
					// 用户点击了确定 可以调用删除方法了
					// that.data.users.splice(e.currentTarget.dataset.index, 1)
					let index = e.currentTarget.dataset.index
					let userId = e.currentTarget.dataset.id
					console.log(index)
					console.log(userId)
					if (index > 0 && userId > 0) {
						api.delFriend(userId).then(res => {
							api.findAllInfos().then(res => {
								app.globalData.users = res.data.data
								that.setData({
									users: app.globalData.users
								})

							})
						})
					}
				} else if (sm.cancel) {
					console.log('用户点击取消')
				}
			}
		})


	},

	bianji: function (e) {
		console.log(e)
		let userInfoId = e.currentTarget.dataset.id
		usersIndex = e.currentTarget.dataset.index
		console.log(userInfoId)
		console.log(usersIndex)
		this.setData({
			actionSheetHidden: !this.data.actionSheetHidden
		})
		wx.navigateTo({
			url: '/pages/bianji/bianji?usersIndex=' + usersIndex + '&userInfoId=' + userInfoId,

		})
	},
	xinzeng: function () {
		wx.navigateTo({
			url: '/pages/bianji/bianji?usersIndex=' + -1+ '&userInfoId=' + -1,

		})
	},
	
})
